package main

import (
	"bufio"
	"fmt"
	"os"
	"strings"
)

func main() {
	//Scan 将 Scanner 推进到下一个令牌，然后可以通过 Bytes 或 Text 方法获得该令牌。 当扫描停止时，它返回 false，无论是到达输入的末尾还是错误。 Scan返回false后，Err方法会返回扫描过程中发生的任何错误，除非是io.EOF，Err会返回nil。 如果 split 函数返回太多空标记而不推进输入，则扫描恐慌。 这是扫描仪的常见错误模式
	var scanner = bufio.NewScanner(strings.NewReader("gopher"))
	for scanner.Scan() {
		fmt.Println(len(scanner.Bytes()) == 6)
	}

	if err := scanner.Err(); err != nil {
		fmt.Fprintln(os.Stderr, "shouldn't see an error scanning a string")
	}
}
